perm filename CURVES.MF[MF,DEK]1 blob sn#750669 filedate 1984-04-19 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00015 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00003 00002	delimiters ()
C00005 00003	draw z1a{left}..z2a{up}..z3a..z4a..z5a..z6a..cycle
C00006 00004	draw z1a{up}..z2a{left}..z3a..z4a..z5a..z6a..cycle
C00007 00005	show up,left
C00008 00006	draw z1a..z2a..z3a..z4a & z4a..z5a..z6a..cycle
C00009 00007	draw z1a..z2a..z3a..z4a..z4a..z5a..z6a..cycle
C00010 00008	draw z1a..z2a..z3a..z4a{curl 2}..z5a..z6a..cycle
C00011 00009	draw z1a..z2a..z3a{curl 1}..z4a..z5a{curl 1}..z6a..cycle
C00012 00010	erase z1..z2&z2..z3&z3..z4&z4..z5&z5..z6&z6..z1&cycle
C00013 00011	def demochar(text ..)=
C00014 00012	demochar(..)
C00015 00013	path a.in, a.out
C00018 00014	tracingchoices:=1
C00020 00015	end
C00021 ENDMK
C⊗;
delimiters ();
def tracingall=tracingcommands:=3;
 tracingedges:=1; tracingtitles:=1; tracingequations:=1; tracingspecs:=2;
	tracingpens:=1; tracingchoices:=1; tracingstats:=2;
 tracingonline:=1;tracingoutput:=1;tracingmacros:=3 enddef;
%tracingall;

def down=(0,-1) enddef;
def up=(0,1) enddef;
def right=(1,0) enddef;
def left=(-1,0) enddef;
def angle primary d = (cosd d, sind d) enddef;

vardef z@#=(x@#,y@#) enddef;

edges e;
e=nulledges;

def draw expr x = addto e contour x withweight 1 enddef;
def erase expr x = addto e contour x withweight -1 enddef;

openwindow 1 from (0,0) to (400,450) at (-100,200);

smoothing:=1; autorounding:=3;

def next =
 display e on 1;
 shipout e;
 e:=nulledges;
 charcode:=charcode+1;
enddef;

hppp:=240/72.27;
vppp:=hppp;
charcode:=96;
tracingonline:=1; pausing:=1;
h=v=4;

z1=(6h,0); z2=(0,8v); z3=(4h,11v); z4=(10h,8v); z5=(17h,9v); z6=(18h,2v);
z0=(9h,3v);
for n:=1 step 1 until 6: z[n]a-z0 = 2(z[n]-z0); endfor
draw z1a{left}..z2a{up}..z3a..z4a..z5a..z6a..cycle;
erase z1{left}..z2{up}..z3..z4..z5..z6..cycle;
next;
draw z1a{up}..z2a{left}..z3a..z4a..z5a..z6a..cycle;
erase z1{up}..z2{left}..z3..z4..z5..z6..cycle;
next;
show up,left;
draw z1a{z2a-z1a}..z2a{z2a-z1a}..z3a..z4a..z5a..z6a..cycle;
erase z1{z2-z1}..z2{z2-z1}..z3..z4..z5..z6..cycle;
next;
draw z1a..z2a..z3a..z4a & z4a..z5a..z6a..cycle;
erase z1..z2..z3..z4 & z4..z5..z6..cycle;
next;
draw z1a..z2a..z3a..z4a..z4a..z5a..z6a..cycle;
erase z1..z2..z3..z4{curl 1}..z5..z6..cycle;
next;
draw z1a..z2a..z3a..z4a{curl 2}..z5a..z6a..cycle;
erase z1..z2..z3..z4{curl 0}& z4..z5..z6..cycle;
next;
draw z1a..z2a..z3a{curl 1}..z4a..z5a{curl 1}..z6a..cycle;
path p; p=z3..z4..z5;
erase z1..z2..z3{curl 1}..z4..z5{curl 1}..z6..cycle;
next;
erase z1..z2&z2..z3&z3..z4&z4..z5&z5..z6&z6..z1&cycle;
draw z1a..z2a&z2a..z3a&z3a..z4a&z4a..z5a&z5a..z6a&z6a..z1a&cycle;
next;
3∪↔2β∪↔7}≠#πIG#↔cQαq9%thS∪Kπ:βiG¬rsiK¬rsiO¬rsiS¬rsiW¬rsi[¬rs∂g∂f)l4+/∪πO∃πQE9;S⊃9;i~q;iQrsiU9wQY9;∨K∂3∃Xh+;↔G!l4+.s∪∪↔3X4(3∪↔n{∂#π∩A99%Xh+∪↔n{∂#π∩A9;S.sO'?r↓I99KX4+∪.k?∂#∂⊃!9;&+;O'}q↓E9∩q9%lhS∪↔7}≠#πIBq;S↔w≠'?9β	AAArq%l4V#↔7?≡CπI!rsS↔;≡K?9↓~yQ99KX4+∪.k?∂#∂⊃!9;&+;O'}q↓Eβ∞s⊃↓Irq%l4V#↔7?≡CπI!rsS↔;≡K?9↓∩βπ;⊃β	99%Xh(3Cπ&Aβ¬;Nq1β¬v{WQlhS¬;?/!↓u↓*β∪πS
βSπ/.qβ≠K}iβ''βπ⊂4RAMA9C	US!c→A9U+→cY%rq!IQs	IMGBaIU9;1eKYJq9!E*qEIM∞A1IMs→YeK2I99!β99EYK∪!1I2qEYe↔1$4)rq!AMs1MAcBaMM93	USYJq9!EαqAEU&A1QQs⊃AAC2I99!C⊃M9A#1K!1+	9MMC+Y%9rAI]9∪→Ac!c)M9Iβ↓CY%Hh)99C⊃e9Y3	W!1+!9aAββY%9rA!MAs⊃AACBaUY9CIIOYJq9!MαqIEU&A1YIs9aQ[2I$4)rq!Ies9UMcBaYY9∪→AcYJq9!I:qUMa.A1YesAMAc2I99!∪	9]YK∪!1]
qQeI∨1%99C	]9I#1K!1;↓9a]3KY$4Rq9!E~qMUMFA1Yas↓QYK2I99!C	I9]+→c!13)9QAββY%9rAEI93!YK!c1Q9E3IKY%Hh)99C	E9M≠AW!13	9IE+#Y%9rAAe9≠→aW!c1A9Uβ9←Y%rq!AYsIIMGBaYE9#9YgYJq9!A*qYAAεA1YQs⊃YEW2H4)9rAA]9β	US!c1a9YK⊃OY%rq!EEs	UMcBa]E9CIIOYJq9!I
qaAAεA1]Ms9aQ[2I99!≠↓9aE+#!1]∩qYAAπ1$4)rq!Mas↓EUSBaY]9;)McYJq9!!≠I9IY+!1Yαq]UMG1%99C→e9Q)S!1≠19EYK∪Y%$hQ99!≠I9]I≠!1M
qUUMG1%99C!E9M∪→G!1∪A9eA;;Y%9rAQM93!YK!c⊃a9E∪→GY%rq!QYsIMaWBaIe9;→aWYHh)99C!a9E+→c!1≠⊃9IAββY$4R1!Qas	UMcBaMI9∪↓ACYJq9!QJqaQY⊗A1MIs	A]←2H4)→C!e9a#1K!1≠⊃9EA;;Y%9rAQ]9#IIO!c⊃Y9M+→cY%rq!QEs⊃AACBaIM9+⊃MGYJq9!M*qAYE.A1IUs!eIO2H4)9rAMA9C	US!c→A9U+→cY%α1β∂g≡c∃l4Ph+¬;Nq↓t4RA!MAs⊃EUSBaUE9;1eKYJq9!MαqQMAFA1MQs)MaW2I$4)rq!!IBqAAAεA1MEs↓EUS2Ko∂W⊗a↓Cyrq!IAs!]YgBaIa9→aWYJq9!E"q]A]>A1MAsIA]←2H4)↓α↓99!→9IQ3∪!1M2qIAAπ1%99C	]9EC![!1#!9MA;;Y%9rAMA9∪	US!c)E9]3IKY'↑≠WK1ββy%↓2β∂g∂f)l4(hS∪Kπ:β¬;?/!mβ↔⊗O∃β
s'9lhS;↔c#X4(3SK∞≠';∨≡C?'∂/→iuEXh+O#␈9↓!Ac↓'oπv;3∃↓≠βy99C⊃AA1αKoπ;>c∃↓53βyl4W≠#?]αAA1AO[π;∨f)↓MCrq9!Iβ↓1A%Xh+O#␈9↓!Ac↓'oπv;3∃↓≠βy99C⊃AA1αKo∂W⊗a↓KyXh+O#␈9βiG←QI7i∂q9;i↔[iI7Sy9;S→9;i"q;iUrsiY9v≠g∂3*`4)↓αCiE9wQI%9wQM9;S!9;i*q;iYrs∂g∂f)l4+'∪π∂'v;∂#?N≠↔Mik↓l4(hS∪↔→π#'∂/nK/Mβh4)β'∪π]↓BiU1AJq;S↔w≠'?9↓A99C↓1A%rsS↔;≡K?9Eβ↓984PI!A1k⊃%9;&+;O'}qEAArq!5UbiI%9w#↔;ON{9EAαq;∂g≡c∃l4Rβ∪Kπ:↓!IA*aA%9w#↔;ON{9EAαq9!Iβ↓1A%rsS↔;≡K?9Eβ↓984PI!IAαa5I%rsS↔;≡K?9Eβ↓99!∪↓U15∩I9;S.sO'?s	AA9v≠g∂3+X4)β.s∪∪↔3X4(4V#Kπ]αAA1AO[π;∨f)↓MCrq9!Iβ↓1A'↑;∨3*↓5YCr↓_4)α↓↓↓↓αAIAAc↓%99C⊃AA1k	AA'↑#?←;rq;S↔w≠'?9↓99!αa5EAαKoWCrq9!Ac↓%↓→ε≠g∂3+X4+SN≠/7π⊗[Mmβv+cQlhS∪Kπ:↓!A1αKoπ;>c∃↓Yπq99!∪↓A1AO[π;∨f)↓5Yπq↓_4R↓↓↓↓α↓!IAαaA%9rAIAAbiEAAO[∪?←wq9;S.sO'?s	A99C↓15Eβ↓'oWπq99!αaA%↓2β∂g∂f)l4+&K∂/7∂∪/Mmεs↔cQXh+∪K∂9↓!Ac↓'oπv;3∃E∪βy99C⊃AA1αKoπ;>c∃↓53βy↓_hQ↓↓↓α↓↓!Iβ↓1A%rq!IAαa5EAαKo∪?>sy9;&+;O'}qEA9rAA15↓A'o/βy99C↓1A%α1β∂g≡c∃l4W#'∂/nK/MZβ;↔c#X4+∪⊗]↓!αaA'o∞s∨3∃k→Cy9rAIAAc↓'oπv;3∃↓k1Cy↓0h)↓↓α↓↓↓!∪↓A1AJq9!Iβ↓15Eβ↓'o∪␈;;y9w#↔;ON{9EArq!A1k	AA'←+Cy9rAA1AJ↓→β∂N≠3∃lhSS'∂↑kπK/≠Yβ;↔G!l4+/∪πO∃αAA1AO[π;∨f)↓MCrq9!Iβ↓1A'↑;∨3*↓5YCr↓_4)α↓↓↓↓αAIAAc↓%99C⊃AA1k	AA'↑#?←;rq;S↔w≠'?9↓99!αa5EAαKoWCrq9!Ac↓%↓→ε≠g∂3+X4+∪⊗]↓!αaA'o∞s∨3∃β1Cy9rAIAAc↓'oπv;3∃↓k1Cy↓0h)↓↓α↓↓↓!∪↓A1AJq9!Iβ↓15Eβ↓'o∪␈;;y9w#↔;ON{9EArq!A1k	AA'←+Cy9rAA1AJ↓→β∂N≠3∃lhSS'∂↑kπK/≠Yβ;↔G!l4(3↔; h(β+V